1. Field of the Invention
The present invention relates to an image generating apparatus for and an image generating method of generating a three-dimensional (3D) image on the basis of three-dimensional coordinate information, which is applied to a navigation system or the like, and a computer program to perform the image generating method.
2. Description of the Related Art
Recently, the research development of an electronic control for controlling a drive of a car and the spread of a navigation system for supporting a drive are remarkable. In general, the navigation system is basically designed so as to have various databases and to display map information, current position information, various guidance information, etc. on a display unit. Moreover, such a navigation system is typically designed so as to search for a drive route in accordance with an input condition. It is further designed so as to display the searched drive route and a current position based on a GPS (Global Positioning System) measurement or a self-contained measurement on a map and carry out guidance (navigation) to a destination.
Moreover, in some types of navigation systems, a view on a front side from a currently driving point in addition to the drive route is displayed on a display unit. In addition, an indication of a driving lane, a direction to be curved at a crossing, a distance to a crossing, a distance to a destination, an arrival expectation time and the like are displayed. In such navigation systems, the forward view is displayed as a 3D image in perspective, which is a technique for drawing a 3D image on a plane on the basis of view point of a viewer.
Furthermore, some types of navigation systems is designated to change the forward view displayed as a 3D image according to an advance of a car in order to reproduce the change of the actual view that a driver watches in the car through the front window of the car while driving.
By the way, in order to display a 3D image that continuously changes, it is required to calculate enormous map data containing three-dimensional coordinate information at a high speed, input the data obtained by calculating to a drawing device one after another, and generate many 3D images in a shot time. In response to such a requirement, the technique that a display list is generated by mixing drawing object information indicating objects to be drawn such as a road, a building and so on and the coordinate transformation information indicating a view point, a field of view, a light source and so on, and a 3D image is generated at a time by using the display list. For example, the display list of OpenGL developed by Silicon Graphics Inc. has such a construction (Incidentally, OpenGL is a trademark of Silicon Graphics Inc.). However, if the image generating apparatus is applied to a navigation system or the like, it is required to generate the 3D images successively in real time in order to reproduce a view that successively changes, such as a landscape watched from a moving car or the like. As the movement of a car is fast, the landscape quickly changes. Therefore, it is required to generate 3D images at a very high speed. For this reason, if the generating of the display list is carried out at every 3D image corresponding to the changing view, it is impossible to reproduce the continuous and smooth change of the view as 3D images, because it takes a long time to generate the display list for each 3D image. Also, there is a technique that can store image information of a region wider than a display region in a larger frame buffer and instantly display the image when the display region is moved within the range. This technique can be used for a simple 2D image. However, it cannot be used for a 3D image, because the view to be displayed as the 3D image variously changes with the change of a view point, and therefore, it is impossible to generate and store in advance all of the 3D images corresponding to the various changes of the view point even if a large capacity memory is prepared.